package com.quanyan.club.entity.vo.resp;

import com.google.common.collect.Lists;

import com.alibaba.dubbo.common.utils.CollectionUtils;
import com.quanyan.common.validation.base.Query;

import java.io.Serializable;
import java.util.List;

import javax.validation.constraints.NotNull;

/**
 * @Author Hugo.Wwg
 * @Since 2016-06-03
 *
 * 俱乐部活动现场管理对象
 */
public class ResClubActivityMemberManage implements Serializable {

    private static final long serialVersionUID = -8677808922550522001L;

    @NotNull(groups = Query.class)
    private Integer activityId;

    @NotNull(groups = Query.class)
    private Integer clubId;

    @NotNull(groups = Query.class)
    private Integer uid;

    private String name;

    private Integer signUpType; //0 主要信息人 1 代报名

    @NotNull(groups = Query.class)
    private String mobile;

    private Integer gender; // 1:男 2:女

    private String avatar;

    private Integer payChannel; //缴费类型：0线上，1线下，2退款

    @NotNull(groups = Query.class)
    private Integer manageType; //默认0(用户报名,管理员还未对其进行管理操作)，1 请假（用户取消） 2 补请假 （管理员取消）3 缺席 4 签到 5 补报名（签到的一种）

    private Integer orderId;

    private String remarkname;

    private Integer signId;

    private List<ResClubActivityMemberManage> replaceMembers; //代报名的人

    public Integer getSignId() {
        return signId;
    }

    public void setSignId(Integer signId) {
        this.signId = signId;
    }

    public String getRemarkname() {
        return remarkname;
    }

    public void setRemarkname(String remarkname) {
        this.remarkname = remarkname;
    }

    public Integer getActivityId() {
        return activityId;
    }

    public void setActivityId(Integer activityId) {
        this.activityId = activityId;
    }

    public Integer getClubId() {
        return clubId;
    }

    public void setClubId(Integer clubId) {
        this.clubId = clubId;
    }

    public Integer getUid() {
        return uid;
    }

    public void setUid(Integer uid) {
        this.uid = uid;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getSignUpType() {
        return signUpType;
    }

    public void setSignUpType(Integer signUpType) {
        this.signUpType = signUpType;
    }

    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    public Integer getGender() {
        return gender;
    }

    public void setGender(Integer gender) {
        this.gender = gender;
    }

    public String getAvatar() {
        return avatar;
    }

    public void setAvatar(String avatar) {
        this.avatar = avatar;
    }

    public Integer getPayChannel() {
        return payChannel;
    }

    public void setPayChannel(Integer payChannel) {
        this.payChannel = payChannel;
    }

    public Integer getManageType() {
        return manageType;
    }

    public void setManageType(Integer manageType) {
        this.manageType = manageType;
    }

    public Integer getOrderId() {
        return orderId;
    }

    public void setOrderId(Integer orderId) {
        this.orderId = orderId;
    }

    public List<ResClubActivityMemberManage> getReplaceMembers() {
        if(CollectionUtils.isEmpty(this.replaceMembers)){
            replaceMembers = Lists.newArrayList();
        }
        return replaceMembers;
    }

    public void setReplaceMembers(List<ResClubActivityMemberManage> replaceMembers) {
        if(CollectionUtils.isEmpty(replaceMembers)){
            replaceMembers = Lists.newArrayList();
        }
        this.replaceMembers = replaceMembers;
    }
}
